package com.haoan.index.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.baomidou.mybatisplus.annotation.*;
import io.swagger.v3.oas.annotations.media.Schema;
import io.swagger.annotations.ApiParam;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;

import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.haoan.common.annotation.Excel;
import com.haoan.index.base.BaseEntity;

/**
 * 活动对象 web_activity
 *
 * @author autoGen
 * @date 2025-01-03
 */
@Data
@Schema(description = "活动")
@TableName("web_activity")
public class Activity extends BaseEntity implements Serializable
        {
private static final long serialVersionUID=1L;

    /** $column.columnComment */
    @TableId(value = "id", type = IdType.AUTO)
    @Schema(description = "PK_web_activity")
    @ApiParam(name = "id",value = "PK_web_activity")
    private Long id;

    /** 活动名称 */
    @Schema(description = "活动-活动名称")
    @ApiParam(name = "name",value = "活动-活动名称")
    @Excel(name = "活动名称")
    @TableField(value = "`name`")
    private String name;

    /** 活动地点 */
    @Schema(description = "活动-活动地点")
    @ApiParam(name = "address",value = "活动-活动地点")
    @Excel(name = "活动地点")
    @TableField(value = "`address`")
    private String address;

    /** 活动图片 */
    @Schema(description = "活动-活动图片")
    @ApiParam(name = "picture",value = "活动-活动图片")
    @Excel(name = "活动图片")
    @TableField(value = "`picture`")
    private String picture;

    /** 简介 */
    @Schema(description = "活动-简介")
    @ApiParam(name = "brief",value = "活动-简介")
    @Excel(name = "简介")
    @TableField(value = "`brief`")
    private String brief;

    /** 活动开始日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Schema(description = "活动-活动开始日期")
    @ApiParam(name = "startDate",value = "活动-活动开始日期")
    @Excel(name = "活动开始日期" , width = 30, dateFormat = "yyyy-MM-dd")
    @TableField(value = "`start_date`")
    private Date startDate;

    /** 活动结束时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Schema(description = "活动-活动结束时间")
    @ApiParam(name = "endDate",value = "活动-活动结束时间")
    @Excel(name = "活动结束时间" , width = 30, dateFormat = "yyyy-MM-dd")
    @TableField(value = "`end_date`")
    private Date endDate;

    /** 详情 */
    @Schema(description = "活动-详情")
    @ApiParam(name = "detail",value = "活动-详情")
    @Excel(name = "详情")
    @TableField(value = "`detail`")
    private String detail;

    /** 上架状态 */
    @Schema(description = "活动-上架状态")
    @ApiParam(name = "activityStatus",value = "活动-上架状态")
    @Excel(name = "上架状态")
    @TableField(value = "`activity_status`")
    private String activityStatus;

    /** 创建时间 */
    @TableField(value = "`create_time`")
    private Date createTime;

    /** 创建人 */
    @TableField(value = "`create_by`", fill = FieldFill.INSERT)
    private String createBy;

    /** 修改时间 */
    @TableField(value = "`update_time`")
    private Date updateTime;

    /** 修改人 */
    @TableField(value = "`update_by`", fill = FieldFill.INSERT_UPDATE)
    private String updateBy;

    /** 有效标志1有效0无效(无效数据任何地方不可见) */
    @Schema(description = "活动-有效标志1有效0无效(无效数据任何地方不可见)")
    @ApiParam(name = "valiFlag",value = "活动-有效标志1有效0无效(无效数据任何地方不可见)")
    @Excel(name = "有效标志1有效0无效(无效数据任何地方不可见)")
    @TableField(value = "`vali_flag`")
    private Integer valiFlag;

    @TableField(exist = false)
    private String status;
}

